Embodiments of the inventive subject matter generally relate to the field of computers, and, more particularly, to efficiently mapping many-many relationships between user interface elements.
In information management software applications, one or more objects, options, etc. may be related with one or more other objects, options, etc. For example, in database management systems, users may need to assign one or more data elements in a first column to one or more data elements in a second column. Similarly, users may need to assign one or more data elements in the first column to one or more data elements in a second column, and in turn to one or more data elements in the third column, etc. Users may also need to assign one or more data elements in a reverse direction (e.g., from the second column to the first column, etc.). When presenting such relationships between data elements, information management systems may employ various user interfaces, such as list interfaces, table interfaces, line map interfaces, etc. However, such user interfaces may not be very efficient. For example, in a list user interface, a user can select a single item at a time (e.g., by opening a separate dialog box representing the properties of the selected item). The properties of the selected item may indicate its relationship to an item(s) in another list. However, list user interfaces may not efficiently display many-to-many relationships (among multiple items in different lists). Additionally, list interfaces may not allow bi-directional assignments (i.e., assignment in either direction) between data elements of two or more columns. Furthermore, list interfaces may not allow users to easily compare related data elements in two or more columns.
As for table user interfaces, tables present data elements in rows and columns. In tables, users can typically associate data elements in two sets of data elements by marking intersections of rows and columns (e.g., making a check mark with a mouse click). In some instances, table user interfaces clearly show associations between data elements by showing check marks in the table. However, table interfaces support data associations between only two sets of data elements, and in some instances, table interfaces may not clearly show data associations. For example, users may have difficulties identifying data associations between data elements that do not occupy consecutive rows. Also, in the table user interface, when the set of data elements does not fit entirely on a user's screen, the user may scroll to view data elements that are not visible. Scrolling can be tedious, especially when the number of data elements is large.
As noted above, some data presentation interfaces do not facilitate easy and efficient data viewing and processing for many to many associations between sets of data elements. Some embodiments of the inventive subject matter provide better ways of viewing and processing data.